Vending system

ABSTRACT

A system for performing and recording transactions is used in connection with the vending of articles through vending terminals, especially in vending trolleys on board transportation vehicles, such as airplanes, trains, ferries, and buses. The system includes a computer, a visual display mechanism, and input and output mechanisms. At least part of the input mechanism includes a dynamic key displayed in the display mechanism. The computer includes a random access memory (RAM), and, in a preferred embodiment, the system includes a mechanism for detecting and correcting errors in the RAM that may be introduced by external radiation.

BACKGROUND OF THE INVENTION

The present invention relates to a system for performing and recordingtransactions in connection with vending of articles, in particular foruse in connection with "on board vending", that is, in connection withvending terminals, especially vending trolleys on board transportationmeans such as aircraft, trains, ferries, buses, etc.

It is known to use computers with entry keys, bar code readers,displays, printers, etc. for performing and recording transaction inconnection with on board vending.

For example in GB 2 205 428, an application of a hand-held data terminal(Psion Organiser II) for sales on aircrafts is disclosed. This dataterminal provides the user with a limited input/output flexibility andthe dynamic key concept described below is not provided.

In WO 86/03869 a pocket-sized personal terminal adapted to be used inconnection with different financial transactions is disclosed. A menudriven application utilizing the dynamic key concept is also disclosed.However, the specific problems associated with on board vending is notdiscussed in this document.

As the vending activity in on board vending environments will often takeplace under difficult conditions with respect to space and timeconstraints, and as there is a demand for an increasing efficiency inthe on board vending so that all passengers will be offered theopportunity of buying their needs even during short trips such as shortflights, there is a demand for on board vending systems which are veryeasy to operate after a short learning period, yet able to perform allthe necessary single and combined transactions which will be required ina modern vending environment. The present invention fulfils this demandand provides a system for performing and recording transactions inconnection with the vending of articles, which system ensures aconcentrated functionality and a very easy understanding and operation.

SUMMARY OF THE INVENTION

In one aspect, the invention relates to a system for performing andrecording transactions in connection with vending of articles,

the system comprising computer means, display means, input means andoutput means,

at least part of the input means being constituted by a dynamic keydisplayed in the display means, the dynamic key showing at least one ofthe features a)-d)

a) the label of the dynamic key has a content which is related to thecontext in which the key is displayed, and the dynamic key isactivatable to cause input to the computer means by interaction, byexternal pointing means, with at least part of the display area occupiedby the key,

b) the label of the dynamic key shows identification of a type ofarticle together with the number of articles of the type, activation ofthe key causing incrementation or decrementation of the number ofarticles of the type to be input to the computer means,

c) the label of the dynamic key shows identification of a type ofarticle together with the price, in a selected currency, of an articleof the type or (where the number of articles of the type is also shownin the label) of the number of articles of the type,

d) the label of the dynamic key shows the designation of a type ofinformation together with specific information of the type, activationof the key permitting change of the specific information.

As will be understood from the following discussion, these features,either alone or in combinations, preferably in combinations where atleast the feature a) and more preferably at least the features a) and b)is/are included, permit an extremely simple and safe, yet very effectiveand advanced, operation of the vending system.

In the present specification and claims, the term key, when used inconnection with a key displayed in the display, designates a distinctfield of the display allocated to one item of information or connecteditems of information, such as:

a) one item of information, e.g.:

an arrow key

the name of a type of article

the designation of a currency

a seat identification

a message

a help screen

b) connected items of information, e.g.:

the name of a type of article in connection with the price of thearticle

the number of articles of a type in connection with the price of thenumber in question of articles

a question connected with the possible answers

the designation of a type of information together with the specificinformation, such as:

"DATE" together with the actual date,

"FLIGHT" or "TRAIN" or "FERRY" together with tie actual identification,or

the designation of a currency in connection with an amount in thecurrency,

the display key constituting an input means to the computer means.

The distinct field can be graphically highlighted by means of aboundary, and/or a raster, and/or a colour, or it can be distinguishedas a single line. The field defining the key can also be divided insubfields or subkeys, but is still to be considered one key in thecontext of the present definitions.

The term "dynamic", as used in connection with a display key, indicatesthat the key shows a label which can be exchanged in dependence of thecontext in which the key is displayed, and/or the contents of whichlabel consists of several elements of which at least one can be changedor exchanged completely or partially independently of the other one orothers.

One special type of dynamic display key is a dedicated input key, e.g.for a credit card number or a flight number, containing a prompt for theinput and a display of the information input. This kind of key cansuitably cooperate with a set of display keys which are displayed onlywhen needed and which each contain one selection of information that canbe input, e.g. numeric keys for inputting amounts or alphanumerical keysfor inputting departure station, carrier identification, etc.

With respect to feature a) above, the dynamic key having acontext-relevant label is a key which is activatable by any kind ofexternal interaction with the display area occupied by the key orconstituting the key, or with at least part of the display area (whichis critical in some cases, vide the discussion of incrementing ordecrementing in the following) The term "external pointing means" isused to indicate that the pointing means is not merely e.g. a bar orarrow on the screen, but is actually a physical pointing means pointingat and activating the key by interaction with at least part of the keyarea. The external pointing is suitably a tactile pointing means, suchas simply a finger or pointer touching and/or lightly pressing againstat least part of the area occupied by the key. "Touchscreens" are wellknown in the art and may be implemented in a number of ways, for exampleby means of a grid of infrared light sources and corresponding infrareddetectors at the edges of the display, or by means of a fluid "plasma"which causes change of electrical properties of a screen area whencompressed; it will be understood that the exact manner in which thetactile or other activatability of the display key is provided is not ofimportance in connection with the present invention, as long aneffective and precise function of the tactile display key is obtained.Other suitable display keys activatable by interaction, by externalpointing means, with at least part of the key area, are keys which areactivatable by means of light, by magnetic means, or by electricalmeans.

The combination of activatability by direct external pointing means,suitably simply by touching with a finger, and the context-related labelresults in an ease, safety and efficiency in operation which isextremely valuable in the otherwise often stressed situations which canoccur in on board vending.

With respect to feature b) above, it is considered very valuable thatthe operation is as simple as possible with respect to the kind ofactivity for which the system is intended. One way of obtaining this isto adapt the system to the case where the individual customer inquestion will purchase one or a few of a particular type of article.This means that normally, the system is adapted to display the number 1in association with the identification of a type of article selected, ahigher number than one being input simply by incrementing the number byactivation of an area of the dynamic key which is associated withincrementation. Most often, any number higher than 1 wanted will be asmall number, such as 2 or 3 or 4, so that the incrementation is thefastest and safest way--and the way most practical and comfortable tothe operator--of inputting the number in question. If the operator"overshoots", it is easy to correct the number by activating the part ofthe key which decrements the number. If desired, decrementing to anegative number could indicate that the customer in question isreturning an article or articles bought previously, e.g. at an earliertime during the voyage in question. As a suitable example, the key couldbe a line of a "total" screen, the line containing the number, theidentification of the article, and the price, and incrementation couldbe performed by activating the right part of the key which shows thenumber, whereas decrementation could be performed by activating the leftpart of the key which shows the price. In cases where larger numbersmight be relevant, a part of the key area could be allocated to anactivatable toggling between a condition where theincrementation/decrementation is performed and a condition where thenumber could be inserted from a numerical keyboard.

With respect to feature c) above, it is highly preferred thatinformation about the price of a type of article is displayed in theselected currency together with the information about the identity ofthe type of article in a dynamic key on the display of the computer, sothat the price is always immediately available to the operator in themost relevant place and in the desired currency. In the contexts wherethe number of articles of the type is displayed as part of the key, theprice will be the price for the number in question in the selectedcurrency.

With respect to feature d) above, the above-mentioned keys for inputtinge.g. an amount in a currency or a flight, train, ferry or bus number areexamples of extremely userfriendly input keys which because of theirconstruction will contribute to faster and safer input of these morecomplex combinations of information than in known on board vendingsystems.

In most on board vending systems, most of the information about articlesto be sold is entered by means of a bar code reader or another codesensor adapted to sense identification information from articles to beselected, and this will also normally be the case for the systemaccording to the invention. Thus, in most practical embodiments of thesystem, the input means additionally comprise a code sensor adapted tosense identification information from articles to be selected. The codesensor may, e.g., be a code reader or code scanner such as a bar codereader, a bar code scanner or a magnet code reader. When a physicalarticle has been selected by the operator and its type sense by means ofthe code sensor, the input from the code sensor will suitably result inselection of one piece of the article in question for sale, repeatedinput from the code sensor incrementing the number of articles of thetype by one for each input.

A particular useful application of a code sensor is in connection withsales of pre-pack, i.e. pre-pack contains a set of articles a passengerhas ordered before his trip to be delivered during the trip. Thepre-packed set of articles may carry identification information, such asa list of the articles contained in the package, the price of eacharticle, the total price of the pre-pack, the receiver of the prepack,etc. The pre-pack may be sold and the identification information sensedby the code sensor at any point during sales of other articles to orother transactions with the customer in question. The pre-packedarticles may be handled by the vending system as if they were sold oneby one to the customer or in a more simple version of the on boardvending system, the pre-pack may be handled as a single article.

Normally, a large proportion, and perhaps the majority, of articles soldin the vending system will be entered by means of a code sensor, but inmany situations manual input from the display is necessary or suitable,e.g.:

1) where the physical article is not supplied with any code, or the codehas been damaged,

2) where the number input from the code sensor must be decremented,

3) where the sales discussion with the customer has been based on adisplay list of types of articles with appertaining prices.

In addition to this, manual input is, of course, necessary

to enter information about the currency in which payment is made,

in connection with identification of the passenger in the seat orposition in question (although this could be by means of a code readerif the seats or positions are identified by means of codes, or thepassengers themselves could be identified on the basis of codes on e.g.their boarding pas)

in connection with log in procedures, including entering informationabout departure station, flight, train, ferry or bus number anddeparture date, correction of time and date,

refund of goods to customers who have changed their mind, etc., etc.

To accommodate modern credit and pay card systems, the input means ofthe system according to the invention will normally additionallycomprise an electronic payment medium station. The electronic paymentmedium station can be a credit card reader and/or a pay cardreader/writer, but it could also be a station connected to a wirelesscredit or pay system. Input from an electronic credit card reader willreplace a manual credit card payment device and produce the necessarypaper for signature, etc., and, at the same time, record the manner ofpayment of the amount in question.

An important additional input/output means in most on board vendingsystems according to the invention is a memory media reader/writer, suchas a memory card reader/writer for any suitable type of memory card orchip, such as CMOS-RAM, SRAM, ELPROM, FLASH EPROM, etc. The memorymedia, such as memory card, is the preferred source for data (such asitem list, prices, currency exchange rates, etc.) for use in thetransactions and can be updated from a central or decentral source.

Similarly, the memory media is the presently preferred media for storingtransactions performed during a vending session or over a period oftime. Transactions can be aggregated from several vending stations bymoving one memory card from station to station and extracting theirtransactions, or one vending station can be designated as a master andthe cards from the other stations with their stored transactions can beentered one by one.

The on board vending system may also be provided with interface means sothat a plurality of vending systems may be interconnected through alocal area network enabling communication between a plurality of onboard vending systems. Further, a server may be connected to the localarea network, for example with the on board vending systems connected ina client/server architecture. Hereby, it will be possible to collect, onthe server, information of transactions from all on board vendingsystems operating on a transport means. Further, it will be possible foreach on board vending system to read information from the server, suchas credit card black-listing information, currencies, etc. It will alsobe possible for the on board vending systems to keep track oftransactions between two different on board vending systems, such asexchanges of money of different currencies, exchange of articles, etc.

The communication with the local area network may be wirelesscommunication, such as infrared communication, radio wave communication,ultrasonic communication, etc.

Physically, the computer means of the system according to the inventionis suitably a portable computer, such as a battery powered computer, inparticular where the vending system is to be used on a movable trolleyor in places where mains power is not readily available. When the systemis arranged on a vending trolley or another support, it is suitablyadjusted with respect to the angle of inclination of its screen so thatit is adapted to the height of the operator, and/or, for e.g. an LODscreen, the angle of the crystals is adapted to the illumination wherethe screen is to be used.

During development of the present invention, it was discovered that theRAM memory of the on board vending system was sensitive to nuclearradiation at a level experienced at normal cruise altitudes of passengeraircrafts. Therefore, error detection and correction codes weredeveloped for the on board vending system so that the system could beapplied in a passenger aircraft during flight without possible loss ofdata.

The most important feature of the error detection and correction codesdeveloped is that they ensure that a RAMbased program with an error orRAM-based data with an error do not cause further destruction of data inthe on board vending system. Further, it is required that the codesshould have a low execution time and a low memory overhead.

According to a preferred embodiment of the invention, the program of theon board vending system, including the error detection and correctioncodes, resides in RAM memory. Thus, the error detection and correctioncodes may themselves contain an error. Therefore, in order to minimizethe risk that an error destroys the error detection and correction codeitself, the error detection and correction is performed successivelystarting with execution of a very small first program that performs asimple checksum test of the next second program to be executed.Presently, the part of the first program that detects errors in thesecond program is stored in at most 22 bytes of the RAM memory. Theremaining part of the first program comprises an error handling routine.Because of its small size, the probability of an error occurring in thiserror detection program segment is, very low. If an error occurs in thissegment of the RAM memory, it is presently preferred to power down theon board vending system, i.e. no error correction is performed by thefirst program.

If the first program does not detect errors in the second program, thenext step of the error detection and correction is performed, wherebythe second program checks a third program for errors. The third programis split into specific blocks and the second program performs a checksumtest on each block of the third program.

The checksum test may comprise the steps of first summing all the bytesin a block and then comparing the result of the summation with the knowncorrect checksum. However, any arithmetical operation may be applied inthe checksum test, such as addition, subtraction, exclusive or-ing, etc.

The checksum test presently preferred comprises simultaneous calculationof a first and a second checksum. The calculation of the first checksumcomprises the steps of xor-ing two consecutive 16-bit bytes together,and, if the result has an even parity, shifting the result one bit tothe right (corresponding to a division by 2), or, if the result has anodd parity, shifting the result one bit to the left (corresponding to amultiplication by 2) and then xor-ing the next consecutive byte to theresult of this operation until all bytes of the block in question havebeen included. Calculation of the second checksum (a conientionalchecksum test) comprises adding two consecutive 16-bit bytes togethermodulus 2¹⁶ and then adding the next consecutive byte to the result ofthis operation until all bytes of the block in question have beenincluded. This algorithm has proven highly effective in detecting morethan one bit errors in the same block.

According to a preferred embodiment of the invention, two or moreversions of the third program reside in the RAM memory, whereby adetected error may be corrected by selecting an error-free version of aspecific block of the third program for execution. If one or more errorsare detected in all versions of the block in question, it is presentlypreferred to power down the on board vending system.

Typically, the second program is stored within 128 bytes of the RAMmemory.

The last step of the error detection and correction method is to checkand correct, by the third programme, the entire RAM memory including theremaining part of the RAM memory containing a program that implementsall the functions of the on board vending system.

As the previous steps of the error detection have ensured thecorrectness of the error detection and correction codes, the entireprogram may be checked in any conventional way, such as by a cyclicredundancy check (CRC), a Galois field check (GF(2⁸)), a checksum, etc.

It is presently preferred to perform a Galois field check (GF(2⁸)),wherein the RAM memory is divided into 248 bytes blocks with fourchecksum bytes attached to each block. Thereby, it is possible to detectthree bit errors and correct two bit errors in a block. This method isselected for its low memory overhead (4 bytes overhead per 248 bytes)and for its fast execution times.

Presently, it is also preferred that each block of the third programcomprises a program segment that during execution performs a specificfunction of the error detection and correction method.

Preferably, a first part of a program segment of the third programcontains code relating to detection of errors in the entire program anda second part of the program segment of. the third program contains codeto be executed in relation to operations to be carried out if an erroris detected. The error detection and correction is then donesuccessively in such a way that if no errors are detected by the secondprogram in the first part of the program segment of the third program,this program segment is executed. If, hereby, an error is detected inthe entire program, the second part of the program segment of the thirdprogram is checked for errors by the second program and is executed ifno errors are detected. If an error is detected, another version of theblock is checked for errors and executed if no errors are detected orthe on board trading system is powered down if errors are detected inall corresponding blocks. Thus, only those program segments that aregoing to be executed are checked for errors while error correcting partsof the error detection and correction codes that are not going to beexecuted are not checked for errors.

According to another embodiment of the invention error correction anddetection is performed by storing information about the correct contentof the RAM memory in a ROM memory.

For example, a Nordstrom and Robinson code may be used in RAM memory,e.g. with a 6 bit Hamming distance between each correct data code, whichmay be obtained by attaching an 8 bit control byte to each 8 bit databyte of the RAM memory. Then, the combined 16 bit data and control bytesmay be used as an address for a ROM, the storage locations of whichcontain the correct data values corresponding to the combined data andcontrol bytes, this content being transmitted to the processor of the onboard vending system. Alternatively, a microcontroller may compare thecontent of a 8 bit data byte in the RAM memory with the allowed correctdata values of the selected data code and based on the comparisonforward a correct data value to the processor of the on board vendingsystem. The correct values of the selected data code may be calculatedby the microcontroller or it may be stored in a ROM memory.

It is also within the scope of the present invention to include errordetection and correction code in the operating system of the controllerof the on board vending system residing in a memory that is notsusceptible to radiation.

The error detection and correction code may be executed at anyconvenient time during use of the on board vending system, such asduring power up of the system, at regular intervals during operation ofthe system, after conclusion of each sales operation, after a specificnumber of power ups of the system, etc.

It is presently preferred to detect and correct bit errors in data filesin the RAM memory of the system, disk RAM included, using a conventionalmethod for checking the data byte by byte, such as by using theabove-mentioned Nordstrom and Robinson code with 6 bit Hamming distancebetween the data codes.

It is further preferred to use the third program of the error detectionand correction code for error detection and correction in the fileallocation table of the disk RAM.

The invention will now be described in greater detail with reference tothe drawings, in which

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a system according to the invention,

FIG. 2 is a block diagram of the hardware components of a systemaccording to the invention,

FIG. 3 is a block diagram showing the functionality of an embodiment ofthe system according to the invention,

FIG. 4 is a flow sheet illustrating in detail the initial log inprocedure of the block diagram of FIG. 3,

FIG. 5 is a flow sheet illustrating in detail the menu (total) of theblock diagram of FIG. 3,

FIG. 6 is a flow sheet illustrating in detail the manual and 6A itemregistration (item groups and items of the block diagram of FIG. 3) and

FIG. 7 is a flow sheet illustrating in detail the seat and 7Aidentification procedure of the block diagram of FIG. 3,

FIG. 8 is a flow sheet illustrating in detail the payment procedure ofthe block diagram of FIG. 3,

FIG. 9 illustrates in detail the log out procedure of the block diagramof FIG. 3, and

FIGS. 10 show screen dumps of parts of the procedures of and 11 theblock diagram of FIG. 3.

DETAILED DESCRIPTION OF THE INVENTION

In FIG. 1, a system 1 according to the invention comprises a portablecomputer 2 having a liquid crystal touchscreen display 3 and semi-fixedkeys 4 (shown in with labels in 4a) A bar code scanner 5 is connected tothe computer 2. The computer is equipped with a thermoprinter 6 with apaper roll holder 7 and with a credit card reader 8. As shown in thelower part of FIG. 1, the computer 2 is also equipped with a memory cardreader for reading from and writing to a memory card 11. The computer 2is mounted in a mounting unit 10 comprising two parts rotatable inrelation to each other around a shaft 9. The upper part of FIG. 1 showsthe system 1 with the mounting unit 10 in an unfolded position foroperation of the system 1 with the display 3 positioned in a suitableangle for the operator of the system 1. The lower part of FIG. 1 showsthe system 1 with the mounting unit 10 in a folded position for storageof the system 1.

The block diagram of FIG. 2 shows how the various parts of the systemare incorporated into one unit. The computer means internally comprisesa CPU, RAM, an internal disk (which is a disk, such as a RAM disk, amagnetic disk, an optic disk, etc.), a touchscreen, an external disk (inthe form of a memory card) and a thermoprinter. The computer meanscommunicates via a communication link with a bar code scanner and acredit card reader.

FIG. 3 shows an overview of the functionality of a system of theinvention. Most of the links shown in FIG. 3 are managed by thesemi-fixed keys shown in FIG. 1, the rest being managed by display keysor by a combination of semi-fixed keys and display keys. In principle,all of the links could be managed by display keys.

The log in procedure illustrated in FIG. 4 starts with reading, in thecredit card reader 8, of an ID card of the operator in charge of the onboard vending (FIG. 10A shows the corresponding screen dump). When theoperator has been accepted, the system checks whether a new item and/orcurrency database is present on the memory card 11 in the memory cardreader/writer. If a new database is present, it is loaded to theinternal RAM disk; if not, the system questions whether the old databaseshould be used. Subsequently, the system verifies that a database ispresent in the RAM disk and proceeds to the log in menu which isillustrated as a screen dump in FIG. 10B. In the log in menu, theoperator checks whether the date and time are correct; if not, heactivates the dynamic key constituted by the date or time line:activation, by touching either the date or the time, will select thedate or the time for correction by means of the numeric display keysshown. Using an analogous procedure, the operator actives the keyconstituted by the line comprising the designation "FLIGHT" and theindication of the flight number: by touching the line, he makes theflight number indication available to changing by means of the numerickeys; in this case, the letter SK are a fixed part of the displayidentifying the airline company. When the system is used in other meansof transportation, such as trains, ferries, buses, etc., the designation"FLIGHT" is of course changed to an appropriate designation. The twonext keys (lines) are updated analogously, except that when touching theDEP.STATE line, the screen changes to a screen containing alphanumerickeys. Touching the CURRENCY line makes the screen change to screen shownin FIG. 11D. As appears from FIG. 11D, DKK has been chosen as thereference currency (exchange rate 100). Any of the other currencies canbe selected as the reference currency by touching the dynamic displaykey (the field) in question, whereby the screen will change back to thescreen of FIG. 10B showing the selected currency, and all other screensin the system will from then on by default refer to the selectedcurrency and by default show all prices in that currency.

After the log in procedure, the system switches to the main menu whichis illustrated by the flow sheet of FIG. 5. The main menu loop willstart with the screen of FIG. 10C, but with an empty middle field and anamount of 000.00. After inputting selected articles, either by means ofthe bar code scanner 5 or manually (will be explained below), the screenmay look as illustrated in FIG. 10C, where the two arrow keys in the topline actuate page up and page down, respectively. From the main menu ofFIG. 10C, other menus are selected by means of the semi-fixed keys 4,4a. In the remaining text reference is made to the semi-fixed keys 4a ofFIG. 1. FIG. 3 shows which menus can be selected. If, in the examplescreen shown in FIG. 10C, the operator wants to decrement the number ofKenzo ties to 1, he touches the left side of the key constituted by theKENZO TIES line.

When the operator is satisfied that the items in the TOTAL menu shown inFIG. 10C constitute the correct numbers of the correct items, heactivates the PAY semi-fixed key, and the system displays the PAYMENTscreen (FIG. 11C) which is described in detail below.

As mentioned above, FIGS. 6 and 6A illustrate the manual item selectionflow chart corresponding to ITEM GROUPS and ITEMS of the block diagramof FIG. 3. After pressing of the semifixed key GROUP LIST, the systemdisplays the screen ITEM GROUPS illustrated in FIG. 10E, however withsecond line empty. On touching one of the dynamic keys (fields) labelledwith the main groups, the system displays the corresponding item list.In the example shown (FIG. 10D), the dynamic key EXCLUSIVE of FIG. 10Ehas been touched, and the item list displays the items pertaining to thegroup EXCLUSIVE. After touching of the dynamic key (line) containingCHRONOGRAPH SWA(TCH), the display looks exactly as shown in FIG. 10D,the second line showing the selected number of the selected item andallowing change of the number by incrementing (right touch) ordecrementing (left touch). Return to ITEM GROUPS is obtained by pressingone of the semi-fixed keys ESC, GROUP LIST and ENTER, and return to theTOTAL menu is obtained by pressing the semi-fixed key TOTAL. If theoperator wants to display the prices of the ITEMS menu in a differentcurrency, he touches the semi-fixed key CURRENCY (or the dynamic key(field) in the top line presently showing DKK) whereby the systemdisplays the CURRENCY menu (FIG. 11D) from which the reference currencymay be changed as explained above.

In the seat identification procedure illustrated in FIGS. 7 and 7A, andin the screen dumps in FIG. 11A and FIG. 11B, it is possible to storeand retrieve bills under the individual seat numbers.

The payment routine illustrated in FIG. 8 starts with a PAYMENT menu(FIG. 11C) showing the amount to be paid in the selected currency. Theinitial information in the menu will show the amount to be paid in thedefault currency. By pressing either the semi-fixed key CURRENCY (or, asa special feature, one of the empty lines of the PAYMENT menu), adifferent payment currency can be selected in the CURRENCY menu. Uponselection of a different currency, the system again displays the PAYMENTmenu, this time with the total amount to be paid shown in the selectedcurrency. If the customer pays the amount in question in the selectedcurrency, the operator presses the semi-fixed key RECEIPT, and thesystem prints an invoice stating the items purchased, the price of theindividual items and a summation (in the default currency), and theamount paid, the latter in the payment currency. If the customer doesnot pay the full amount in the selected currency, the amount displayedis changed by activating the key (line) and changing the amount usingthe numeric display keys, and the semi-fixed key ENTER is pressed. Then,the system displays the outstanding amount in the default currency, andthe procedure may be repeated until the full amount has been paid.Payment may in a similar way be performed by means of a credit card. Asa service, the dynamic field in the second line shows which amounts arethe minimum and maximum amounts acceptable in the selected currency, andwhether coins in the selected currency are accepted.

It will be appreciated that the dynamic display keys play a decisiverole in making complex procedures such as the above payment procedurepossible, simple and easy.

FIGS. 9 and 11E illustrate the log out procedure. It is seen in the flowchart how the handling of the log out proceeds in detail.

While the above description deals with a vending system, in particularan on board vending system, it will be understood that the principles ofthe invention could also be utilized in connection with other systemswhere analogous problems are to be solved.

What is claimed is:
 1. A system for performing and recordingtransactions in connection with the vending of articles,the systemcomprising computer means, display means, input means and output means,at least part of the input means comprising a dynamic key displayed inthe display means, the dynamic key having a label; the content of thelabel being related to the context in which the key is displayed,wherein the dynamic key is activatable to cause input to the computermeans by interaction, by external pointing means, with at least part ofthe area of the display means occupied by the key, the dynamic key beingselected from the group consisting of:a) a dynamic key having a labelwith an identification of a type of article together with a selectednumber of articles of the type, activation of the key causingincrementation or decrementation of the number of articles of the typeto be input to the computer means, b) a dynamic key having a label withan identification of the type of article together with the price, in aselected currency, of an article of the type or (where the number ofarticles of the type is also shown in the label) of the number ofarticles of the type, and c) a dynamic key having a label with adesignation of a type of information selected from the group consistingof: identification of means of transportation, currency, date, time,seat identification, passenger identification, and departure station,together with specific information of the type, activation of the keypermitting change of the specific information.
 2. A system according toclaim 1, wherein the label of the dynamic key shows a content which isrelated to the context in which the key is displayed, and wherein thedynamic key is activatable by tactile means to cause input to thecomputer means by interaction, by external pointing means, with at leastpart of the area of the display means occupied by the key.
 3. A systemaccording to claim 1, wherein the label of the dynamic key shows acontent which is related to the context in which the key is displayed,wherein the dynamic key is activatable to cause input to the computermeans by interaction, by external pointing means, with at least part ofthe area of the display means occupied by the key, and wherein thedynamic key is a key which is activatable by means selected from thegroup consisting of light, magnetic means, and electrical means.
 4. Asystem according to claim 1, wherein the label of the dynamic key showsan identification of a type of article together with the number ofarticles of the type, activation of the key causing incrementation ordecrementation of the number of articles of the type to be input to thecomputer means, and wherein the number of articles is either incrementedor decremented depending upon which particular area of the key isactivated.
 5. A system according to claim 1, wherein the label of thedynamic key shows a designation of a type of information together withspecific information of the type, activation of the key permittingchange of the specific information, and wherein the change of thespecific information is input from a set of numeric or alphanumerickeys.
 6. A system according to claim 5, wherein the numeric oralphanumeric keys are display keys displayed only when needed.
 7. Asystem according to claim 5, wherein the designation of a type ofinformation is designation of a currency, and the specific informationchanged is an amount in the currency.
 8. A system according to claim 1,wherein the input means additionally comprise a code sensor adapted tosense identification information from articles to be selected.
 9. Asystem according to claim 8, wherein the code sensor is a code reader orcode scanner such as a bar code reader, a bar code scanner or a magnetcode reader.
 10. A system according to claim 1, wherein the input meansadditionally comprise an electronic payment medium station.
 11. A systemaccording to claim 10, wherein the electronic payment medium station isa credit card reader.
 12. A system according to any of the precedingclaims, wherein the input means additionally comprise a memory mediareader.
 13. A system according to claim 12, wherein the memory mediareader is a memory card reader.
 14. A system according to claim 12,wherein data for use in the transactions are obtainable from a memorymedia in the memory media reader.
 15. A system according to claim 1,wherein the output means additionally comprise a memory media writer.16. A system according to claim 15, wherein the memory media writer is amemory card writer.
 17. A system according to claim 16, which is adaptedto store transactions performed during a vending session or over aperiod of time on a memory media in the memory media writer.
 18. Asystem according to claim 1, wherein the computer means is a portablecomputer.
 19. A system according to claim 18, wherein the portablecomputer is battery powered.
 20. A system according to claim 18, whereinthe portable computer is arranged on vending trolley and adjusted withrespect to the angle of inclination of its screen.
 21. A systemaccording to claim 1, which comprises means for detecting, in RAM meansincorporated in the system, RAM errors introduced by external radiation.22. A system according to claim 21, wherein the RAM errors are RAMerrors introduced by radioactive radiation.
 23. A system according toclaim 21, wherein the means for detecting RAM errors are activatable atleast once during a program execution session.
 24. A system according toany of claim 21, wherein means for detecting RAM errors comprise logiccircuit means connected to the RAM means and to ROM means, the ROM meanscontaining information permitting detection, by the logic circuit, ofRAM errors.
 25. A system according to any of claim 21, wherein the meansfor detecting RAM errors comprise a RAM section containing informationrelating to the size and checksum of a segment of a RAM-based program tobe run by the system, the system comparing the information of the RAMsection with the actual checksum detected from the segment of theRAM-based program.
 26. A system according to claim 25, wherein the meansfor detecting RAM errors comprise several RAM sections containinginformation relating to the size and checksum of corresponding RAM-basedprogram sections, the first program section being of a smaller size thana later program section.
 27. A system according to claim 26, wherein alater program section is present in the RAM in duplicate or in a highernumber.
 28. A system according to claim 21, which comprises means forcorrecting RAM errors detected.
 29. A system for performing andrecording transactions in connection with the vending of articles, thesystem comprising computer means, display means, input means and outputmeans, at least part of the input means comprising:a dynamic keydisplayed in the display means, the dynamic key being activatable tocause input to the computer means by interaction, by external pointingmeans, with at least part of the area of the display means occupied bythe key; the dynamic key having a label, the contents of the label beingrelated to the context in which the dynamic key is displayed, thedynamic key being selected from the group consisting of:a) a dynamic keyhaving a label with an identification of a type of article together withthe number of articles of the type, activation of the key causingincrementation or decrementation of the number of articles of the typeto be input to the computer means, b) a dynamic key having a label withan identification of the type of article together with the price, in aselected currency, of an article of the type or (where the number ofarticles of the type is also shown in the label) of the number ofarticles of the type, and c) a dynamic key having a label with adesignation of a type of information selected from the group consistingof: identification of means of transportation, currency, date, time,seat identification, passenger identification, and departure station,together with specific information of the type, activation of the keypermitting change of the specific information; the dynamic key beingfurther activatable for the selection of a reference currency, wherebyprices of articles are displayed in the reference currency.
 30. Thesystem of claim 29, further comprising a currency menu with a pluralityof second dynamic keys, each of which has a label indicating arespective reference currency, wherein a desired reference currency isselected by activating a selected one of the plurality of second dynamickeys.
 31. A system for performing and recording transactions inconnection with the vending of articles, the system comprising computermeans, display means, input means and output means, at least part of theinput means comprising:a dynamic key displayed in the display means, thedynamic key being activatable to cause input to the computer means byinteraction, by external pointing means, with at least part of the areaof the display means occupied by the key; the dynamic key having alabel, the contents of the label being related to the context in whichthe dynamic key is displayed, the first dynamic key being selected fromthe group consisting of:a) a dynamic key having a label with anidentification of a type of article together with a selected number ofarticles of the type, activation of the key causing incrementation ordecrementation of the number of articles of the type to be input to thecomputer means, b) a dynamic key having a label with an identificationof the type of article together with the price, in a selected currency,of an article of the type or (where the number of articles of the typeis also shown in the label) of the number of articles of the type, andc) a dynamic key having a label with a designation of a type ofinformation selected from the group consisting of: identification ofmeans of transportation, currency, date, time, seat identification,passenger identification, and departure station, together with specificinformation of the type, activation of the key permitting change of thespecific information; the dynamic key being further activatable forentering a first amount paid by a customer and the payment currency ofthe first amount.
 32. The system of claim 31, further comprising meansfor displaying, in a selected reference currency, the remaining amountto be paid after payment of the first amount.
 33. A system forperforming and recording transactions in connection with the vending ofarticles, the system comprising computer means, display means, inputmeans and output means, at least part of the input means comprising:adynamic key displayed in the display means, the dynamic key beingactivatable to cause input to the computer means by interaction, byexternal pointing means, with at least part of the area of the displaymeans occupied by the key; the dynamic key having a label, the contentsof the label being related to the context in which the dynamic key isdisplayed, the dynamic key being selected from the group consistingof:a) a dynamic key having a label with an identification of a type ofarticle together with a selected number of articles of the type,activation of the key causing incrementation or decrementation of thenumber of articles of the type to be input to the computer means, b) adynamic key having a label with an identification of the type of articletogether with the price, in a selected currency, of an article of thetype or (where the number of articles of the type is also shown in thelabel) of the number of articles of the type, and c) a dynamic keyhaving a label with a designation of a type of information selected fromthe group consisting of: identification of means of transportation,currency, date, time, seat identification, passenger identification, anddeparture station, together with specific information of the type,activation of the key permitting change of the specific information; thedynamic key being further activatable for entering a first amount paidby a customer and the payment currency of the first amount; and thedynamic key being still further activatable for entering a second amountto be paid with a credit card and the payment currency of the secondamount.
 34. The system of claim 33, further comprising means fordisplaying, in a selected reference currency, the remaining amount to bepaid after payment of the first amount and after payment of the secondamount.